package com.luoqian.demo01;

import java.util.ArrayList;

public class GenericsTest {
    public static void main(String[] args) {
        ArrayList arrayList = new ArrayList();
        // public boolean add(E e)
        arrayList.add("java");
        arrayList.add(123);

//        for (int i = 0; i <arrayList.size() ; i++) {
//            Object o = arrayList.get(i);
//            // Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
//            String str = (String)o;
//            System.out.println(str);
//        }



        // 使用泛型
        ArrayList<String> stringArrayList = new ArrayList<>();
        stringArrayList.add("123");
        stringArrayList.add("456");
        stringArrayList.add("789");
        for (int i = 0; i <stringArrayList.size() ; i++) {
            String s = stringArrayList.get(i);
            // Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
            System.out.println(s);
        }
        System.out.println("=============");
        // 使用泛型
        ArrayList<Integer> integerArrayList = new ArrayList<>();
        integerArrayList.add(1);
        integerArrayList.add(2);
        integerArrayList.add(3);
        for (int i = 0; i <stringArrayList.size() ; i++) {
            Integer integer = integerArrayList.get(i);
            System.out.println(integer);
        }
    }
}
